ci: Add GitHub Actions workflow for test suite
authorDan Nicholson <dbn@endlessos.org>
Fri, 18 Jun 2021 17:33:56 +0000 (11:33 -0600)
committerDan Nicholson <dbn@endlessos.org>
Fri, 18 Jun 2021 21:30:06 +0000 (15:30 -0600)
commita0012ae0eea82d47a83b44a938d621535b7bc2da
tree14f88f6b42ae986e93c857a8031726dce39f4c9c
parent9ff141fe80f145862c947c3a25d9367c01ebe43c
ci: Add GitHub Actions workflow for test suite

This runs the test suite in various distros. The intention is to use
this to replace the Travis CI setup since it often has rate limit
failures.

Each configuration in the matrix runs in a Docker container, installs
system dependencies and then builds and tests ostree. The scripts are
basically copy and paste of the travis ones with some of the lesser used
features pruned out.

Some differences from the travis setup:

* OS details are gathered from `/etc/os-release` instead of being passed
  in as environment variables.

* The scripts always assume the user is root and don't try to use
  `sudo`.

* The `installcheck` test has been removed since ostree doesn't actually
  use that. It could be added to run the installed tests or
  `gnome-desktop-testing-runner` could just be called directly.

There should be enough flexibility to run other distros like Fedora,
Arch or Alpine. Another option would be to use the other build scripts
in ci/.
.github/workflows/tests.yml [new file with mode: 0644]
ci/gh-build.sh [new file with mode: 0755]
ci/gh-install.sh [new file with mode: 0755]